package com.tjec.project.system.domain.vo;

import com.tjec.framework.aspectj.lang.annotation.Excel;
import com.tjec.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.ArrayList;
import java.util.List;

/**
 * 业务类别管理对象 bms_md_business_category
 *
 * @author tjec
 * @date 2020-04-03
 */
public class BmsMdBusinessCategoryVO extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id 主键
     */
    private String id;
    
    /**
     * guid
     */
    private String guid;
    
    /**报告号申请**/
    private String reportNoApply;
    
    /*
     * 报告名称
     */
    private String reportName;
    
    /**
     * 业务编码
     */
    private String code;

    /**
     * 分类名称 分类名称
     */
    @Excel(name = "分类名称 分类名称")
    private String menuName;

    /**
     * 上级分类 上级分类
     */
    @Excel(name = "上级分类 上级分类")
    private String parentId;

    /**
     * 排序 显示顺序
     */
    @Excel(name = "排序 显示顺序")
    private Double orderNum;

    /**
     * 状态 状态（0正常 1停用）
     */
    @Excel(name = "状态 状态", readConverterExp = "0=正常,1=停用")
    private String visible;
    
    private String menuId;

    /**
     * 是否可以被点击
     */
    private Boolean isDisabled;
    /**
     * 子类数量
     */
    private Integer num;
    
    private String section;

    /**
     * 子业务类别
     */
    private List<BmsMdBusinessCategoryVO> children = new ArrayList<BmsMdBusinessCategoryVO>();

    public String getMenuId() {
		return menuId;
	}

	public void setMenuId(String menuId) {
		this.menuId = menuId;
	}

	public void setId(String id) {
        this.id = id;
    }

    public String getId() {
        return id;
    }

    public void setMenuName(String menuName) {
        this.menuName = menuName;
    }

    public String getMenuName() {
        return menuName;
    }

    public void setParentId(String parentId) {
        this.parentId = parentId;
    }

    public String getParentId() {
        return parentId;
    }

    public void setOrderNum(Double orderNum) {
        this.orderNum = orderNum;
    }

    public Double getOrderNum() {
        return orderNum;
    }

    public void setVisible(String visible) {
        this.visible = visible;
    }

    public String getVisible() {
        return visible;
    }

    public Boolean getDisabled() {
        return isDisabled;
    }

    public void setDisabled(Boolean disabled) {
        isDisabled = disabled;
    }

    public Integer getNum() {
        return num;
    }

    public void setNum(Integer num) {
        this.num = num;
    }


    public List<BmsMdBusinessCategoryVO> getChildren() {
        return children;
    }

    public void setChildren(List<BmsMdBusinessCategoryVO> children) {
        this.children = children;
    }

	public String getGuid() {
		return guid;
	}

	public void setGuid(String guid) {
		this.guid = guid;
	}

    @Override
    public String toString() {
        return "BmsMdBusinessCategory{" +
                "id='" + id + '\'' +
                ", guid='" + guid + '\'' +
                ", menuName='" + menuName + '\'' +
                ", parentId='" + parentId + '\'' +
                ", menuId='" + menuId + '\'' +
                ", orderNum=" + orderNum +
                ", visible='" + visible + '\'' +
                ", isDisabled=" + isDisabled +
                ", num=" + num +
                ", reportName=" + reportName +
                ", code=" + code +
                ", children=" + children +
                ", reportNoApply=" + reportNoApply +
                '}';
    }

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}

	public String getReportName() {
		return reportName;
	}

	public void setReportName(String reportName) {
		this.reportName = reportName;
	}

	public String getReportNoApply() {
		return reportNoApply;
	}

	public void setReportNoApply(String reportNoApply) {
		this.reportNoApply = reportNoApply;
	}
	
	public boolean equals(Object obj) {
		BmsMdBusinessCategoryVO bmsMdBusinessCategory = (BmsMdBusinessCategoryVO) obj;
         return guid.equals(bmsMdBusinessCategory.guid);
     }
		 
     public int hashCode() {
         String in = guid;
         return in.hashCode();
     }

	public String getSection() {
		return section;
	}

	public void setSection(String section) {
		this.section = section;
	}
}
